SEARCH KEYWORD -- Code design
How to do pprof for gRPC service
gRPC is a RPC framework based on HTTP and is frequently used for communications among micro service inside the same organization network. However, the service functions cannot be accessed via normal HTTP URL as it's not a WEB framework. In this case, how to do pprof on a gRPC service? The trick is starting a HTTP server asynchronously while starting the gRPC service. This HTTP server can be accessed to run prrof debug. go func(){ http.ListenAndServe(":10001", nil) }() Since it uses the de...
Open Source Needs a New UI
As a freelance web developer, I’ve seen and used my fair share of open source web applications (and desktop software), and I’d like to point out something that I see all too often in open source projects: the user interface almost always lets the project down. Let me explain… The Problem I’ve used a considerable amount of open source software (web-based and desktop), and I feel that a large portion of them are let down by their UI. The functionality is brill...
Open source,Problem,UI,New paradign 2011-12-09 07:53:19
3 Mistakes Website Owners Must Avoid to Enjoy SEO Success
The first thing a consumer asks themselves when they enter any website/webpage is whether they should stay or not. A consumer has just a few seconds during which, you have a chance to capture and retain them or else they will go. Whether or not they stay depends on a number of factors, but these are things that you can improve in on-site SEO, assisted of course by the web design and development team. Read on to find the three biggest peeves that are causing high bounce rates on your site and ho...
SEO,WEB DESIGN 2015-11-20 02:33:07
How does GoLang know how many CPUs to use?
When running lscpu command on Linux, it will list the CPU info on the machine. Take one example where there is one CPU with 2 cores and each core has two threads which indicates there are 4 cores available. Now let's see how many cores GoLang program would identify. From output, NumCPU and GOMAXPROCS both output 4 which is expected. How does go runtime get this info, does it get it through similar command like lscpu or /proc/cpuinfo? Let's dig more in GoLang's source code. In runtim...
Letter to a Young Developer
I’ve been getting some emails from young developers wanting to “level up†as programmers. I’m definitely not the first to write about this topic, so I’m not sure how much I have to add. Still, for what it’s worth here are a few points off the top of my head: Work with other developers. We are at a wonderful time in the history of technology when for the first time, it doesn’t really matter where you are or who you are working for. So long as you ...
Letter,Tips,Programmer,Developer,Opportu 2011-09-14 11:49:24
Code coverage rate
When doing unit testing, the code coverage rate is often used as the criteria for measuring testing performance, even in some cases code coverage may be used to consider whether the testing task is completed or not. So testers need to spend much time on designing test cases which can cover as many codes as possible. There are advantages and disadvantages about using code coverage rate. First let's check what is code coverage rate: code coverage rate= the degree of code coverage in testing. There...
Unit testing,Code coverage 2013-04-16 12:50:57
A boolean value interview question
Someone asked a question on StackOverflow, he was asked an interview question. The question is : Given 3 boolean variables a, b, c, return true if at least 2 out of the 3 are true. He gave the solution as follows :boolean atLeastTwo(boolean a, boolean b, boolean c) { if ((a && b) || (b && c) || (a && c)) { return true; } else { ret...
bool,return,expression,conditional 2012-04-30 08:49:32
Deep Understanding of ReentrantLock: Unlocking the Mysteries of Java Concurrent Programming
ReentrantLock introduction ReentrantLock is a class in the Java concurrent package, java.util.concurrent.locks, and is an implementation of the Lock interface. As its name suggests, it is a reentrant mutual exclusion lock. A mutual exclusion lock is a synchronization tool used to protect shared resources, ensuring that only one thread can access the resource at a given time. Reentrant means that a thread can acquire the same lock multiple times without causing a deadlock. This lock provides some...
JAVA,REENTRANTLOCK,CONCURRENCY,MULTITHREADING 2023-05-22 08:01:13
10 habits of 10x developers
Last week, I discovered The Rise of Developeronomics via Brad Feld. As long as I’ve lived, it has always been a great time to be a software developer. The economics keep getting better for us. My favorite quote: The one absolutely solid place to store your capital today — if you know how to do it – is in software developers’ wallets. If the world survives looming financial apocalypse dangers at all, this is the one investment that will weather the storms. ...
Developer,Efficiency,Advice,Rest,Focus 2011-12-26 02:54:06
The magic of go:linkname
When writing Go program, there is frequent need on using time.Sleep() function to pause the logic for some time. And if jumping to the definition of this function, can see below definition: // Sleep pauses the current goroutine for at least the duration d. // A negative or zero duration causes Sleep to return immediately. func Sleep(d Duration) I's strange that there is no function body defined here. What happened? The actual definition of the function body is residing at runtime/time.go&nb...
TRICKS,GO:LINKNAME,GOLANG 2022-04-10 08:39:00
RECENT
- Common Pitfalls When Handling JSON in Golang
- Streamlining the Project Invoicing Process: Tools and Strategies
- Performance comparison of string concatenation in Go language
- Why init() is not recommended in Go
- The Role of Coding Skills in Advancing Tech Careers
- Tips for Socializing With Friends During College
- Proximity Cards Do More Than Just Open Doors
- How to choose quality painted auto parts
- Oval engagement rings from MoonOcean: Elegance of form and individual approach
- Hologres vs AWS Redshift
- more>>